//
//  main.c
//  数组的存储细节
//
//  Created by ws on 2017/7/19.
//  Copyright © 2017年 王松. All rights reserved.
//

#include <stdio.h>

/**
 1.数组的地址就是第一个元素的地址
 2.数组中的元素是一块一块连续的存储空间(数组的存储空间是一整块的)
 3.小标小的元素在小地址中,下标大的元素在大地址中
 4.数组的地址就是数组所占存储空间的首地址
 注意点:
 1.数组下标越界,就会约错了对象(访问了不该你访问的元素)或者程序崩溃
 2.使用变量作为元素个数.不可以进行整体赋值;
 3.整体赋值只有在数组定义的时候才可以,也就是数组定义后不可以使用整体的赋值方式
 */
int main(int argc, const char * argv[]) {
    char chars[] = {'a','b','c'};
    //数组名称本身就是一个地址
    printf("数组的地址      = %p\n",chars);//0x7fff5fbff70d
     printf("数组的地址      = %p\n",&chars); //0x7fff5fbff70d
    //取出元素的地址
    int count = sizeof(chars)/sizeof(char);//取出元素的个数
    for (int i = 0; i < count; i++) {
        printf("chars[%d]的地址 = %p\n",i ,&chars[i]);
    }
    return 0;
}
